#ifndef system_h
#define system_h

#include <time.h>
#include <vector>

#include "xml.h"
#include "app.h"
#include "user.h"
#include "config.h"
#include "utility.h"

typedef struct SSysTask{
	int m_Action;
	int m_Type;
	char * m_Name;
	unsigned long m_Size;
} SSysTask;

typedef std::vector<SSysTask> TSysTask;
typedef std::vector<SSysTask>::iterator TSysTaskIter;

class CSys{
public:
	CSys();
	~CSys();
	void initialize();
	void run();

private:
	CApp * m_App;
public:
	bool get_app_state();
	void suspend();

private:
	SSysTask m_SSysTask;
	TSysTask * m_TSysTask;
public:
	void add_file(char * n_fileName, unsigned long n_fileSize);
	void add_dir(char * n_dirName, unsigned long n_dirSize);
	void del_file(char * n_fileName);
	void del_dir(char * n_dirName);
	void save();
};

#endif